package com.epsilon.pos.principal.almacenes.dao;

import java.util.Map;

import org.apache.ibatis.session.SqlSession;

import com.epsilon.pos.principal.almacenes.model.Almacen;
import com.epsilon.pos.principal.almacenes.model.AlmacenPrincipalException;
import com.epsilon.pos.principal.almacenes.model.ArticuloUnitarioAlmacen;
import com.epsilon.pos.principal.ventas.model.Venta;

public interface AlmacenesPrincipalDao {
	public boolean setMovimientoDeAlmacen( Venta venta ) throws AlmacenPrincipalException;
	
	public boolean setMovimientoDeAlmacen( Venta venta, SqlSession sqlSession );

	public boolean existsArticuloUnitarioAlmacen( ArticuloUnitarioAlmacen articulo ) throws AlmacenPrincipalException;

	public boolean setArticuloUnitarioAlmacen( ArticuloUnitarioAlmacen articulo ) throws AlmacenPrincipalException;

	public boolean updateArticuloUnitarioAlmacen( ArticuloUnitarioAlmacen articulo ) throws AlmacenPrincipalException;

	public boolean existsArticuloUnitarioAlmacenServicio( ArticuloUnitarioAlmacen articulo ) throws AlmacenPrincipalException;

	public Map< String, Almacen > getMapaDeAlmacenes() throws AlmacenPrincipalException;

	public Map< String, ArticuloUnitarioAlmacen > getMapaDeArticulosUnitariosAlmacen() throws AlmacenPrincipalException;
}